Apparatus and method for managing application context

ABSTRACT

An apparatus and method for managing application context is provided. A first one of a plurality of terminals, each including at least one application, collects and transmits context information of the application to a migration server so that it is stored and managed in the migration server. The migration server transmits the stored and managed context information to a second terminal corresponding to the first terminal in response to a request of the second terminal. The second terminal restores context based on the context information received from the migration server. This can reproduce the same application and desktop environments as those previously set to be suitable for each work situation, thereby increasing user convenience.

RELATED APPLICATION

The present application is based on, and claims priorities from, KoreanApplication Number 2005-121814, filed Dec. 12, 2005 and KoreanApplication Number 2006-41680, filed May 9, 2006, the disclosure ofwhich is incorporated by reference herein in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus and method for managingapplication context, and more particularly to an apparatus and methodfor managing context which allows a user of a terminal to selectivelycollect and restore work environments (i.e., context information) ofapplications installed and used on the terminal.

2. Description of the Related Art

A method for collecting and restoring context information of officeapplications used for general purposes has not yet been standardized.This method also depends on internal interfaces provided by eachapplication. Thus, it is difficult to simultaneously collect and restorecontext information from a variety of applications, so that it isdifficult to manage the application context information. Conventionally,since application context information is not classified andunmanageable, methods which requires a user to store and restore avariety of context information of running applications personally byusing a storage device are used to migrate context information even whenonly one application is running.

That is, since application context to be migrated is not classified andunmanageable, the user cannot selectively collect and restore context.For example, in conventional context information collection andrestoration methods, application context information of MS Office iscollected using a COM object on the MS Windows operating system, but themethod may not be used for other applications on the same operatingsystem, and also application context information of Linux Open Office iscollected using a system call in the Linux operating system, but themethod may not be used for other applications on the same operatingsystem. Since these methods depend on each application, it is difficultfor these methods to simultaneously collect context of a variety ofapplications on one operating system. Also, these conventional methodscannot selectively store and restore context desired by the user sincecontext information of each office application cannot be classified tobe collected. Thus, to store and restore context information, the usermust personally migrate all context information including undesiredcontext information or migrate only data of each application.

Using the conventional methods to collect, transmit, and restore allcontext information makes it impossible to individually select andrestore context suitable for each work situation and is also veryinefficient while causing security problems. Thus, there is a need toprovide an apparatus and method which simultaneously supports a varietyof applications and also allows selective collection and restoration ofapplication context information desired by the user.

SUMMARY OF THE INVENTION

Therefore, the present invention has been made in view of the aboveproblems, and it is an object of the present invention to provide anapparatus and method for managing application context, wherein contextinformation of office applications used for general purposes isclassified and context information selected by a user is collected andtransmitted to a server and then the context information transmitted tothe server is stored and managed therein while being classifiedaccording to users, context types, and work situations so that it ispossible to restore a work environment suitable for each work situation.

It is another object of the present invention to provide an apparatusand method for managing application context which allows the user toselect and download their own context information stored in a serverafter passing through an authentication process with a current terminalor with another terminal after moving to another place, therebyproviding a convenient continuous work service to the user.

It is yet another object of the present invention to provide anapparatus and method for managing application context, whereininformation, which the user desires to migrate, from among informationof desktop environments and application work environments such as theposition of a toolbar of an MS or Linux office program, the position andsize of a window, a file with which the user is currently working, acurrent URL of the Internet Explorer, a moving image file which is beingplayed by a Media Player and its playback position, and a music filewhich is being played by an MP3 player and its playback position isselectively collected and stored and application context informationsuitable for a situation and time desired by the user is selectivelyrestored, so that the same environment as the previous environment whichthe user set to be suitable for each situation and in which the user wasworking is restored, thereby allowing the user to do a continuous work.

In accordance with one aspect of the present invention, the above andother objects can be accomplished by the provision of an apparatus formanaging application context, the apparatus comprising a plurality ofterminals, each of which includes at least one application, collectscontext information of the application, and restores context using thecollected context information; and a migration server that receives andstores collected context information from a first one of the pluralityof terminals and transmits the context information to a second one ofthe plurality of terminals.

Preferably, each of the plurality of terminals includes an application,context information of which is to be collected; an connectionApplication Programming Interface (API) that receives a list of contextfrom the migration server, receives selection information of contextinformation to be migrated from a user, and collects the selectedcontext information; and a migration client that transmits the contextinformation collected by the connection API to the migration server sothat the collected context information is stored in the migrationserver, requests the stored context information from the migrationserver, and restores context using the context information received fromthe migration server in response to the request.

Preferably, the migration server includes a user manager that managesand authenticates terminal users; an application manager that manages alist of applications that can be migrated and a list of context that iscollectable from the applications and manages application contextinformation received from the first terminal; a storage that stores theapplication list, the collectable context list, and the applicationcontext information received from the first terminal; and a desktopmanager that manages a list of desktop-related context information.

In accordance with another aspect of the present invention, there isprovided a method for managing application context in an applicationcontext management apparatus including a plurality of terminals and amigration server that cooperates with the plurality of terminals througha communication network, the method comprising collecting andtransmitting, by a first terminal including at least one application,context information of the application to the migration server; storingthe context information in the migration server; transmitting the storedcontext information from the migration server to a second terminalcorresponding to the first terminal in response to a request of thesecond terminal; and restoring, by the second terminal, context based onthe context information received from the migration server.

Preferably, collecting and transmitting, by the first terminal, thecontext information of the application to the migration server includesreceiving a migratable list from the migration server; extracting a listof migratable context from the received migratable list; outputting theextracted context list and allowing a user to select context informationto be migrated; and collecting and transmitting the selected contextinformation to the migration server.

Preferably, restoring, by the second terminal, the context based on thecontext information received from the migration server includestransmitting a context information list request signal to the migrationserver; receiving a context information list from the migration server;allowing a user to select context information to be restored based onthe context information list; and receiving the selected contextinformation and restoring application context.

More preferably, restoring, by the second terminal, the context based onthe context information received from the migration server furtherincludes transmitting an authentication request signal to the migrationserver; and receiving an authentication response signal from themigration server.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and other advantages of thepresent invention will be more clearly understood from the followingdetailed description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates the configuration of an application contextmanagement apparatus according to an embodiment of the presentinvention;

FIG. 2 illustrates an external appearance of a terminal and a migrationserver coupled to each other through a USB port according to anembodiment of the present invention;

FIG. 3 illustrates an internal configuration of a terminal whichcollects and restores context according to an embodiment of the presentinvention;

FIG. 4 illustrates an internal configuration of a migration serveraccording to an embodiment of the present invention;

FIG. 5 is a flow chart of a procedure for collecting, storing, andrestoring context information according to an embodiment of the presentinvention;

FIG. 6 is a signal flow diagram illustrating a procedure for collecting,storing, and restoring context information according to an embodiment ofthe present invention;

FIG. 7 illustrates classification of collectable context informationaccording to an embodiment of the present invention; and

FIG. 8 illustrates the structure of a Simple Object Access Protocol(SOAP) message for communication between a terminal and a migrationserver according to an embodiment of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Preferred embodiments of the present invention will now be described indetail with reference to the accompanying drawings. In the drawings, thesame or similar elements are denoted by the same reference numerals eventhough they are depicted in different drawings. In the followingdescription of the present invention, a detailed description of knownfunctions and configurations incorporated herein will be omitted when itmay obscure the subject matter of the present invention.

FIG. 1 illustrates the configuration of an apparatus for managingapplication context according to an embodiment of the present invention.

As shown in FIG. 1, the application context management apparatusaccording to the present invention includes terminals 30A and 30B, acommunication network 10, and a migration server 40.

The terminals 30A and 30B are coupled to the migration server 40 throughthe communication network 10. Each of the terminals 30A and 30B includesa PC, a PDA, a tablet PC, or a notebook computer that includes hardware,a device driver, and an operating system. The communication network 10includes the wired and wireless Internet and includes any communicationline and network capable of communicating with the migration server 40.

Each of the terminals 30A and 30B includes at least one application. Theuser works using applications on the first terminal 30A while changing avariety of work environments to be suitable for each work situation. Ifmigration is automatically activated as the user moves to another placeor migration is manually activated after the user selects and sets aplurality of context to be migrated from a list of migratable context,then the plurality of selected context information is collectivelycollected from each application and temporarily stored in the firstterminal 30A and is then transmitted to the migration server 40 throughthe communication network 10 so that it is stored in the migrationserver 40.

Thereafter, when the user works using another terminal (i.e., the secondterminal 30B) or returns to the first terminal 30A to work, the user canrestore the previous work environment by connecting to the migrationserver 40 through the communication network 10 using the terminal 30B or30A and then selectively downloading context information stored in themigration server 40 after being authenticated.

The first and second terminals 30A and 30B can exchange contextinformation with the migration server 40 through a communicationprotocol. For example, a simple object access protocol (SOAP) can beused as the communication protocol. Although the embodiments of thepresent invention will be exemplified by the SOAP, other communicationprotocols can be used. Details of the SOAP will be explained later inthe description of FIG. 8.

FIG. 2 illustrates an external appearance of a terminal and a migrationserver coupled to each other through a USB port according to anembodiment of the present invention.

As shown in FIG. 2, the migration server 40 according to the presentinvention may be included in a portable storage device such as aportable memory device and a mobile hard drive and can be coupled to avariety of ports, such as a USB port, supported by the terminals 30A and30B. The user of the terminal 30A or 30B selects context information,which they desire to migrate, among context of an application that isrunning on the terminal 30A or 30B, and transmits the selected contextinformation to the migration server 40 coupled to the terminals 30A and30B through the USB port so that it is stored in the migration server40. Thereafter, when the user works on another terminal, the usercouples the terminal to the migration server 40 through a USB port anddownloads desired context information from the migration server 40 sothat the user can work in the same environment as that in which the userwas working on the previous terminal.

FIG. 3 illustrates an internal configuration of the terminal accordingto an embodiment of the present invention.

As shown in FIG. 3, each of the terminals 30A and 30B includes legacyapplications 310, connection application programming interfaces (APIs)320, a new application 330, a control API 340, and a migration client350.

The legacy applications 310 are applications which were developed in thepast and each of which is a target of the context collection. The legacyapplications 310 include a Windows application 312, a Linux application314, etc. Context information of the legacy applications 310 can becollected by the connection APIs 320. It is necessary to provide aconnection API 320 for each operating system or application. Forexample, a connection API 322 for collecting context information using aCOM object is required for the Windows application 312 such as WindowsOffice and a connection API 324 for collecting context information usinga system call or the like is required for the Linux application 314 suchas Linux Open Office. The new application 330 is an application that wasnewly developed to include a connection API 334.

The migration client 350 is a client program that performs overallcontrol of the function to migrate context information of theapplications 310 and 330. Specifically, the migration client 350functions to collect context information of the applications 310 and 330through the connection APIs 320 and 334 and then to transmit thecollected context information to the migration server 40 or functions toreceive and restore context information stored in the migration server40. The migration client 350 collects the context information of theapplications through the standardized control API 340. The control API340 is an interface that collectively collects and restores contextinformation selected by the user from the applications through thecontext APIs 320 and 334 and that controls a function to terminate andstart each of the applications to provide the context migration service.

The migration client 350 includes an application agent 351, a desktopagent 352, a user preference manager 353, and a migration agent 354. Theapplication agent 351 has a function to extract and restore applicationcontext information through the standardized control API 340 and thedesktop agent 352 has a function to extract and restore desktopenvironment context information. The user preference manager 353 has afunction to store and restore selection information of context, whichthe user desires the migration client 350 to collect, and preferenceinformation of the migration client 350. The migration agent 354performs overall control of the context information collection andrestoration of the migration client 350.

Although not illustrated, each of the terminals 30A and 30B may includea memory, at least one central processing unit (CPU) that is coupled tothe memory to perform high speed operations, and an input unit. The CPUincludes an arithmetic logic unit (ALU) that performs calculation, aregister that temporarily stores data and commands, and a controllerthat controls the operation of the terminal. The CPU may be a processorwith one of a variety of architectures such as an Alpha processor ofDigital, MIPS processors of MIPS Technology, NEC, IDT, and Siemens, x86processors of Intel, Cyrix, AMD, Nexgen, and others, and PowerPCprocessors of IBM and Motorola. The input device includes a keyboard anda mouse. For example, the mouse may include a physical transducer suchas a microphone or a touch screen.

FIG. 4 illustrates an internal configuration of the migration serveraccording to an embodiment of the present invention.

As shown in FIG. 4, the migration server 40 performs a function to storeand manage context information received from the migration client of theterminal and thereafter to transmit the context information to theterminal when receiving a context information request from the terminal.The migration server 40 includes a user manager 410, an applicationmanager 420, a desktop manager 430, and a storage (for example, a DBMS)440. The migration server 40 may be included in a portable storagedevice as described above with reference to FIG. 2.

The user manager 410 in the migration server 40 functions to manage andauthenticate users who use the application context management apparatus.The application manager 420 manages a list of migratable applicationsand a list of context information that can be collected from theapplications. The application manager 420 functions to collect a list ofmigratable context from information of environments of the terminals andthe applications installed on the terminals and then to provide thecollected context list to the user. The application manager 420 alsofunctions to manage a list of application context informationtransmitted from each terminal. The desktop manager 430 functions tomanage a list of desktop-related context information. All the contextinformation is converted into a database, which is then stored andmanaged in the DBMS 440 in the migration server 40.

FIG. 5 is a flow chart of a procedure for storing and restoring contextinformation according to an embodiment of the present invention.

As shown in FIG. 5, at step 501, the application agent 351 in the firstterminal 30A collects a list of migratable context from applicationsinstalled on the terminal through the control API 340 and the connectionAPIs 320 in the first terminal and the application manager 420 of themigration server 40. Thereafter, at step 502, the application agent 351in the first terminal 30A presents the migratable context list to theuser.

At step 503, the user executes an application suitable for a worksituation. While the user works with the application, the applicationagent 351 of the first terminal 30A receives selection information ofcontext information, which the user desires to migrate, from the userthrough a user interface (UI) of the migration client 350. At step 504,the migration client 350 in the first terminal 30A collectively collectsand temporarily stores the selected context information. Thereafter, atstep 505, the migration client 350 in the first terminal 30A terminatesthe application with which the user is working and transmits thecollected context information to the migration server 40 through acommunication network.

At step 506, if another context to be stored is present, the procedureproceeds to step 503 and, if any other context to be stored is notpresent, the procedure proceeds to step 507. In this manner, the usercan configure application work environments suitable for a variety ofwork situations and collect and store context of the work environments.

Thereafter, at step 507, when the user moves to another place andaccesses another terminal (the second terminal 30B in this example) towork, the second terminal 30B connects to the migration server 40 andperforms an authentication process in order to restore the contextstored in the migration server 40. After the authentication process, thesecond terminal 30B collects, at step 508, a list of context which canbe migrated to the second terminal through the application manager 420of the migration server 40 and the control API 340 and the connectionAPIs 320 of the second terminal. At step 509, when the user selects adesired work situation from the list, the migration client 350 of thesecond terminal 30B receives context information corresponding to theselected work situation from the migration server 40. At step 510, basedon the received context information, the migration client 350 of thesecond terminal 30B restores the same data and UI environments as thoseof applications, with which the user was working on the previousterminal, in the second terminal 30B.

FIG. 6 is a signal flow diagram illustrating a procedure for storing andrestoring context information according to an embodiment of the presentinvention.

As shown in FIG. 6, at step 601, the first terminal 30A transmits arequest signal, which requests a list of applications supporting themigration and a list of context of the applications, to the migrationserver 40. At step 602, the migration server 40 transmits a migratablelist to the first terminal 30A. Based on the migratable list receivedfrom the migration client 350, the migration client 350 of the firstterminal 30A presents a list of context, which can be migrated from thefirst terminal 30A, and allows the user to select desired contextinformation.

After the user performs a work suitable for each situation and selectscontext information to be migrated at step 603, the migration client 350of the first terminal 30A collectively collects the selected contextinformation and temporarily stores it in the first terminal 30A at step604. At step 605, the migration client 350 of the first terminal 30Atransmits the collected context information to the migration server 40.At step 606, the migration server 40 stores the context informationreceived from the first terminal 30A in the DBMS.

Thereafter, at step 607, the second terminal 30B connects to themigration server 40 and transmits an authentication request signal tothe migration server 40 in order to restore context information storedin the migration server. Although the second terminal 30B may bedifferent from the first terminal 30A, it may also be the same as thefirst terminal 30A when it is necessary to restore the previous workenvironment of the first terminal 30A since it has been formatted or ithas lost some data or for other reasons.

When the user authentication is completed, the migration server 40transmits, at step 608, an authentication response signal to the secondterminal 30B. At step 609, the second terminal 30B then transmits astored context list request signal to the migration server 40.

At step 610, the migration server 40 transmits the stored context listto the second terminal 30B. Then, at step 611, based on the context listreceived from the migration server 40, the migration client 350 of thesecond terminal 30B presents a list of context, which can be restored bythe second terminal 30B, to the user and then requests contextinformation, selected by the user, from the server 40.

Thereafter, at step 612, the migration server 40 extracts and transmitsthe requested context information to the second terminal 30B. At step613, the migration client 350 of the second terminal 30B restores acorresponding work environment of the application based on the contextinformation received from the migration server 40.

FIG. 7 illustrates collectable context information according to anembodiment of the present invention.

As shown in FIG. 7, context 70 is managed while being classified intouser context 71, application context 73, and desktop context 75.

The user context 71 includes information regarding optional items whichthe user has set for migration, a personal schedule for automaticrestoration of context information, migration information, and apersonal folder to be migrated. The application context 73 includes theposition of a toolbar of each application, arrangement of icons, thesize and position of a window on which the user is working, a data filewith which the user is working, an opened page of the data file, acurrently connected URL, environment setting information (i.e.,configuration information), a multimedia file that is being played, anda playback position of the multimedia file. The desktop context 75includes OS background image information, window theme information,shortcuts, toolbar setting information, and the like.

For example, at a certain moment while the user works on a document withMS Office, a Power Point, a web browser, and an MP3 player running, theuser selects a work environment required to be migrated from workenvironments of that moment so that context information of the selectedwork environment is collected and stored through the migration client.Thereafter, while doing a different work with Microsoft Paint, Hangul,and Excel programs running, the user stores a corresponding workenvironment in the migration server. After moving to another place, theuser selects a desired environment from the stored environments torestore corresponding context such as work data including a previouslyset window size and the like, the same page as that of a document withwhich the user was working, and a music data position at which music wasbeing played, thereby reproducing the desired one of the storedenvironments in which the user was working. Simply put, if the usermoves to another place and goes through an authentication process usinganother terminal after context information items which the user hasselected to be migrated are automatically stored, then it is possible toimmediately reproduce the last work environment that has beenautomatically stored.

FIG. 8 illustrates the structure of a Simple Object Access Protocol(SOAP) message for communication between a terminal and a migrationserver according to an embodiment of the present invention.

The SOAP is a lightweight protocol for exchanging structured informationin a distributed environment. The SOAP uses XML to define an extensiblemessage framework and provides a message structure that allows data tobe exchanged using a variety of lower-level protocols. This framework isdesigned so as to be independent of specific programming models orimplementation methods. The SOAP is an object access protocol which canprovide a variety of definitions for referring to remotely locatedobjects.

The SOAP can be used for any application since it is based on XML whichis an industry standard. As most firewalls permit only the web port(Port 80), SOAP messaging is mostly performed depending on the HTTP.According to the SOAP specifications, not only the migration server butalso the terminal can analyze SOAP messages since SOAP messages aretwo-way messages rather than one-way messages.

As shown in FIG. 8, a SOAP message 80 mainly includes a SOAP envelope82, a SOAP header 84, a SOAP body 86, and a SOAP fault 88. The SOAPenvelop 82 is the highest level element of the SOAP message 80 toenvelop the SOAP message 80 and includes the header 84 and the body 86.

The SOAP header 84 serves to add a function to the SOAP message 82although the SOAP header 84 is not essential in the message. The SOAPheader 84 includes a plurality of blocks for containing a variety ofinformation and is the first element following the envelope tag. TheSOAP header 84 is used for administrative purposes such as encoding,authentication, and transaction.

The SOAP body 86 is filled with data to be transmitted through the SOAP.The SOAP body 86 may include a plurality of blocks 87 which are filledwith a requested web service name and associated parameters when theSOAP message is a request message and which are filled with resultinformation when it is a response message.

The SOAP fault 88 is an area in which information of a messaging erroroccurring after SOAP processing is filled. To describe details of theerror, the SOAP fault 88 supports elements such as “faultcode”,“faultstring”, “faultfactor”, and “detail”.

The faultcode element uses a code to identify the type of the error. Byviewing this code, web service consumers can determine which type oferror has occurred. While the code contains machinery information, thefaultstring element provides error information that can be read andunderstood by human beings. The faultfactor element is used to informwhere an error has occurred during a messaging process. As error dataassociated with the SOAP body 86, the detail element is used when SOAPmessaging has failed. If no detail element is present even when an errorhas occurred, it is determined that no error has occurred at a portionassociated with the body 86.

As described above, according to the present invention, while the userworks using an application in a work environment suitable for each worksituation, corresponding application context and desktop context can becollected to be stored and managed in the migration server.

In addition, any terminal which has passed through user authenticationcan select and download context information suitable for each worksituation from the migration server and then can restore the sameapplication and desktop environments as those previously set to besuitable for each work situation. After the user moves to another place,the same application and UI environments as previous ones suitable foreach work situation such as work data, an application window size andposition, a toolbar setting, and a multimedia file playback position areprovided to allow the user to utilize context information suitable foreach situation of the user in any place, thereby increasing userconvenience.

Further, the present invention allows development of an appliedapplication product that supports related services. Applying the presentinvention also makes it possible to develop a product that supports amobile work environment service using a storage device such as a USBmemory rather than the context migration server.

The method according to the present invention can be implemented as aprogram and then be stored in a computer-readable recording medium suchas a CD-ROM, a RAM, a ROM, a floppy disk, a hard disk, and amagneto-optic disc. This process can be easily carried out by thosehaving ordinary skill in the art and thus a more detailed descriptionthereof is omitted.

As is apparent from the above description, the present inventionprovides an apparatus and method for managing application context,wherein a plurality of application work data and environmentinformation, which the user has selected to be migrated, is collectedtogether and collectively stored in a server and, thereafter, the userselects the stored application context information to be restored,thereby reproducing the same application and desktop environments asthose previously set to be suitable for each work situation, therebyincreasing user convenience.

Although the preferred embodiments of the present invention have beendisclosed for illustrative purposes, those skilled in the art willappreciate that various modifications, additions and substitutions arepossible, without departing from the scope and spirit of the inventionas disclosed in the accompanying claims.

1. An apparatus for managing application context, the apparatuscomprising: a plurality of terminals, each of which includes at leastone application, collects context information of the application, andrestores context using the collected context information, by usingconnection Application Programming Interface (API), and a migrationserver that receives and stores collected context information from afirst one of the plurality of terminals and transmits the contextinformation to a second one of the plurality of terminals or vice versa,wherein a user is able to work on the second terminal with the sameworking state consists of the same application, user interface and databased on the context information received from the migration server fromthe user on the first terminal by correctly restoring a selectedprevious collected context information, which is the context informationlast worked on by the user on the first terminal, from the migrationserver by connecting to the migration server, and wherein the contextinformation received by the second one of the plurality of terminalsfrom the migration server from the last context information last workedon by the user on the first one of the plurality of terminals isunclassified or unmanageable to the second one of the plurality ofterminals.
 2. The apparatus according to claim 1, wherein the contextinformation is classified into user context, application context, anddesktop context.
 3. The apparatus according to claim 2, wherein the usercontext includes information regarding optional items which a user hasset for migration and a personal folder to be migrated together withcontext information; the application context includes the position of aapplication toolbar, arrangement of icons, the size and position of awindow on which the user is working, a data file with which the user isworking, an opened page of the data file, a currently connected URL,environment setting information, a multimedia file that is being played,and a playback position of the multimedia file; and the desktop contextincludes OS background image information, window theme information,shortcuts, and toolbar setting information.
 4. The apparatus accordingto claim 1, wherein each of the plurality of terminals includes: atleast one application, context information of which is to be collected;an connection that receives a list of context from the migration server,receives selection information of context information to be migratedfrom a user, and collects the selected context information; and amigration client that transmits the context information collected by theconnection API to the migration server so that the collected contextinformation is stored in the migration server, requests the storedcontext information from the migration server, and restores contextusing the context information received from the migration server inresponse to the request.
 5. The apparatus according to claim 4, whereinthe migration client includes: an application agent that extracts andrestores application context information through the connection API anda standardized control API that is provided between the connection APIand the migration client; a desktop agent that extracts and restorescontext information of a desktop environment of the terminal; a userpreference manager that stores and restores selection information ofcontext which the user desires to collect and preference information ofthe migration client; and a migration agent that performs overallcontrol of the context information collection and restoration.
 6. Theapparatus according to claim 4, wherein the migration client furtherincludes a control API that provides a standardized interface betweenthe connection API and the migration client.
 7. The apparatus accordingto claim 4, wherein, if the application is a new application, theapplication includes the connection API.
 8. The apparatus according toclaim 1, wherein the migration server includes: a user manager thatmanages and authenticates user information; an application manager thatmanages a list of applications that can be migrated and a list ofcontext that is collectable from the applications and managesapplication context information received from the first terminal; and astorage that stores the application list, the collectable context list,and the application context information received from the firstterminal.
 9. The apparatus according to claim 8, wherein the migrationserver further includes a desktop manager that manages a list ofdesktop-related context information.
 10. The apparatus according toclaim 8, wherein the migration server can be included in a portablestorage device.
 11. A method for managing application context in anapplication context management apparatus including a plurality ofterminals and a migration server that cooperates with the plurality ofterminals through a communication network, the method comprising:collecting and transmitting, by a first terminal including at least oneapplication, context information of the application to the migrationserver, by using connection Application Programming Interface (API);storing the context information in the migration server; transmittingthe stored context information from the migration server to a secondterminal corresponding to the first terminal in response to a request ofthe second terminal; and restoring, by the second terminal, contextbased on the context information received from the migration server orvice versa, wherein a user is able to work on the second terminal withthe same working state consists of the same application, user interfaceand data based on the context information received from the migrationserver from the user on the first terminal by correctly restoring aselected previous collected context information, which is the contextinformation last worked on by the user on the first terminal, from themigration server by connecting to the migration server, and wherein thecontext information received by the second one of the plurality ofterminals from the migration server from the last context informationlast worked on by the user on the first one of the plurality ofterminals is unclassified or unmanageable to the second one of theplurality of terminals.
 12. The method according to claim 11, whereincollecting and transmitting, by the first terminal, the contextinformation of the application to the migration server includes:receiving a migratable list from the migration server; extracting a listof migratable context from the received migratable list; outputting theextracted context list and allowing the user to select contextinformation to be migrated; and collecting and transmitting the selectedcontext information to the migration server.
 13. The method according toclaim 11, wherein restoring, by the second terminal, the context basedon the context information received from the migration server includes:transmitting a context information list request signal to the migrationserver; receiving a context information list from the migration server;allowing a user to select context information to be restored based onthe context information list; and receiving the selected contextinformation and restoring application context.
 14. The method accordingto claim 13, wherein restoring, by the second terminal, the contextbased on the context information received from the migration serverfurther includes: transmitting an authentication request signal to themigration server; and receiving an authentication response signal fromthe migration server.